package com.ctshk.rpc.ship.entity;

import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.TableName;
import java.time.LocalDateTime;
import com.ctshk.common.model.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * <p>
 * 船票产品预订设置
 * </p>
 *
 * @author 谢诗宏
 * @since 2021-03-05
 */
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("t_ship_product_reservation_settings")
@ApiModel(value="ShipProductReservationSettings对象", description="船票产品预订设置")
public class ShipProductReservationSettings extends BaseEntity {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "船票产品id")
    private Long shipProductId;

    @ApiModelProperty(value = "开售类型（1：立即开售 2：定时开售）")
    private Integer saleType;

    @ApiModelProperty(value = "开售开始时间")
    private LocalDateTime saleBeginDate;

    @ApiModelProperty(value = "开售结束时间")
    private LocalDateTime saleEndDate;

    @ApiModelProperty(value = "是否二次确认")
    private Integer isConfirm;

    @ApiModelProperty(value = "取消政策(1：限时取消 2：不退不改)")
    private Integer cancelStrategy;

    @ApiModelProperty(value = "预订须知")
    private String bookingInformation;

    @ApiModelProperty(value = "乘客须知")
    private String passengerInformation;

    @ApiModelProperty(value = "小童购票须知")
    private String kidTicketingInformation;

    @ApiModelProperty(value = "服务费类型(1:数值 2：百分比)")
    private Integer serviceChargeType;

    @ApiModelProperty(value = "服务费(HKD)")
    private Double serviceChargePrice;

    @ApiModelProperty(value = "退改手续费类型")
    private Integer refundFeeType;

    @ApiModelProperty(value = "退改手续费(HKD)")
    private Double refundFeePrice;

    @ApiModelProperty(value = "税费与其他费用(HKD)")
    private BigDecimal otherFeePrice;

    @ApiModelProperty(value = "退改列印内容")
    private String refundContent;

    @ApiModelProperty(value = "是否需要证件（0：不需要 1：需要）")
    private Integer isNeedCertificates;

    @ApiModelProperty(value = "是否需要航班信息")
    private Integer isNeedRoute;

    @ApiModelProperty(value = "取票类型(1：电子票 2：纸质票)")
    private Integer ticketCollectionType;

    @ApiModelProperty(value = "取票类型对应方式(电邮/短信)")
    private String ticketCollection;

    @ApiModelProperty(value = "使用方式(1 兑换使用，2 直接使用)")
    private Integer exchangeMethod;

    @ApiModelProperty(value = "创建人")
    private Long createId;

    @ApiModelProperty(value = "修改人")
    private Long modifiedId;

    @ApiModelProperty(value = "删除标识")
    private Integer isDeleted;


}
